package com.itcam.cm.manager.service;

import com.itcam.cm.model.dto.system.SysRoleDto;
import com.itcam.cm.model.entity.system.SysRole;
import com.github.pagehelper.PageInfo;

import java.util.Map;

public interface SysRoleService {
    PageInfo<SysRole> getSysRoleListByPage(Integer page, Integer limit, SysRoleDto sysRoleDto);

    /**
     * 保存系统角色信息
     * @param sysRole
     */
    void saveSysRole(SysRole sysRole);

    /**
     * 更新系统角色信息
     * @param sysRole
     */
    void updateSysRole(SysRole sysRole);

    Map<String, Object> findAllRoles(Long userId);

    /**
     * 分页查询角色列表
     * @param sysRoleDto
     * @param pageNum
     * @param pageSize
     * @return
     */
    PageInfo<SysRole> findByPage(SysRoleDto sysRoleDto, Integer pageNum, Integer pageSize);

    /**
     * 根据角色 ID 删除角色信息
     * @param roleId
     */
    void deleteById(Long roleId);
}
